package com.qianniu.napi.common.config;

import com.qianniu.napi.admin.entity.Appinfo;
import com.qianniu.napi.admin.entity.Merchant;
import com.qianniu.napi.admin.entity.MerchantApp;
import sun.security.krb5.internal.APOptions;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.regex.Pattern;

public class Constants {

    public static final String WEIXIN_FMALL = "napi";

    public static final String WEIXIN_HEWEITANG_APP_ID  ="wxff960338d3484bab";
    public static final String WEIXIN_HEWEITANG_APP_SECRET  ="f0623e1e7014ca90d8cac8c39b1ea682";

//    public static final String IMG_UPLOAD_PATH = "/fafa/www/images/fanli/";
//    public static final String IMG_UPLOAD_HOST = "http://napi.qianniu010.com/images/fanli/";

    public static final String WX_URL_JSCODE2SESSION = "https://api.weixin.qq.com/sns/jscode2session";
    public static final String WX_URL_UNIFIEDORDER = "https://api.mch.weixin.qq.com/pay/unifiedorder";
    public static final String WX_URL_PAY_REFUND = "https://api.mch.weixin.qq.com/secapi/pay/refund";

    public static final String WX_URL_TOKEN = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=SECRET";
    public static final String WX_URL_GETWXACODE_WITHPARAM = "https://api.weixin.qq.com/wxa/getwxacode?access_token=ACCESS_TOKEN";
    public static final String WX_URL_GETWXACODE = "https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=ACCESS_TOKEN";

    public static final String REFUND_SOURCE_UNSETTLED_FUNDS = "REFUND_SOURCE_UNSETTLED_FUNDS";// 默认使用未结算资金退款
    public static final String REFUND_SOURCE_RECHARGE_FUNDS = "REFUND_SOURCE_RECHARGE_FUNDS";  // 可用余额退款
    public static final String NOT_ENOUGH_MONEY = "NOTENOUGH";  // 可用余额退款

    public static final String IMG_UPLOAD_CDN_HOST = ConfigUtil.getString("upload.cdnhost");
    public static final String IMG_UPLOAD_HOST = ConfigUtil.getString("upload.host");
    public static final String IMG_UPLOAD_PATH = ConfigUtil.getString("upload.path");
    public static final String PAYKEY_UPLOAD_PATH = "/fafa/soft/cert_wx/";
    public static final String ROOT_URL = ConfigUtil.getString("root-url");

    public static final String CERT_ROOT_PATH = "/fafa/soft/cert_wx/";
    public static final String WX_QR_PATH = "/fafa/www/images/qr/";
    public static final String WX_MQR_PATH = "/fafa/www/images/MCODE/qr/";
    public static final String WX_QR_PATH_TMPQR = "/fafa/www/images/tmpqr/";
    public static final String PATH_IMAGES = "/fafa/www/images/";
    public static final String PATH_GOODS_FENXIANG = "/fafa/www/images/fx";

    public static final String ENCODE_KEY = "quanniu.hudong";//md5加密key

    public static final String ENCODE_PWD_KEY = "0YU65A71s5ex8fg4g11dCmzi3Mw3WOSr";//md5加密用户密码


    public static final String APP_ID = "wx5419a52e4c448e13";//默认appid
    public static final String MCH_ID = "1507771191";//md5加密key

    public static final String SESSION_KEY = "userSession";//md5加密key

    public static final String EHCACHE_KEY = "shiro-activeSessionCache";//md5加密key

    public static final String REGEX_COMPANY = "";//md5加密key
    public static final String REGEX_AREA = "";//md5加密key

    public static final String AKKA_MSG_CUSERSTAT = "create_userstat";//md5加密key
    public static final String AKKA_MSG_ACCESS_USERSTAT = "access_userstat";//访问我的
    public static final String AKKA_MSG_VISIT_USERSTAT = "visit_userstat";  //我访问的

    public static final String AKKA_MSG_FENXIAO_ORI = "fenxiao_ori";  //我访问的
    public static final String AKKA_MSG_FENXIAO_SCENE = "fenxiao_scene";  //我访问的
    public static final String AKKA_MSG_BIND_PHONE = "bind_phone";  //绑定手机号

    public static final String AKKA_MSG_ORDER_CONFIRM = "order_confirm";  //
    public static final String AKKA_MSG_ORDER_NOTIFY = "order_notify";   //
    public static final String AKKA_MSG_ORDER_STORE_PAY = "order_store_pay";   //
    public static final String AKKA_MSG_ORDER_DALIBAO = "order_dalibao";   //
    public static final String AKKA_MSG_ORDER_HEXIAO = "order_hexiao";   //
    public static final String AKKA_MSG_ORDER_ZIGOUFAN = "order_zigoufan";   //
    public static final String AKKA_MSG_ORDER_SHAREFAN = "order_sharefan";   //
    public static final String AKKA_MSG_ORDER_FENXIAOFAN = "order_fenxiaofan";   //
    public static final String AKKA_MSG_ORDER_QUNZHUANFA = "order_qunzhuanfa";   //
    public static final String AKKA_MSG_RECHARGE_CONFIRM = "recharge_confirm";//
    public static final String AKKA_MSG_HUIYUAN_SHENGJI = "huiyuan_shengji";  //
    public static final String AKKA_MSG_FAN_RUZHANG = "fan_ruzhang";  //

    public static final String AKKA_MSG_STORE_VIEW = "view";    //
    public static final String AKKA_MSG_STORE_ORDER = "order";  //
    public static final String AKKA_MSG_STORE_HEXIAO = "hexiao";  //
    public static final String AKKA_MSG_STORE_MODIFY = "store_modify";  //
    public static final String AKKA_MSG_BANNER_MODIFY = "banner_modify"; //
    public static final String AKKA_MSG_GOODS_MODIFY = "goods_modify";   //
    public static final String AKKA_MSG_NEWS_MODIFY = "news_modify";  //

    public static final String REDIS_USERSTAT_DETAIL = "userstat_detail_";  //

    public static final String REDIS_MUSER_ = "redis_muser_";//md5加密key

    public static final String REDIS_MERCHANT = "merchant__";
    public static final String REDIS_MERCHANT_APP = "merchant_app__";
    public static final String REDIS_MERCHANT_CONFIG = "merchant_config__";
    public static final String REDIS_MERCHANT_CONFIG_EXT = "merchant_configExt__";
    public static final String REDIS_APP_USER = "app_user__";
    public static final String REDIS_APP_MUSER = "app_muser__";
    public static final String REDIS_APP_USER_GUID = "app_user_guid__";
    public static final String REDIS_WX_TOKEN = "wx_token__";
    public static final String REDIS_APP = "app__";
    public static final String REDIS_APP_INIT = "app_init__";
    public static final String REDIS_CATEGORY_LIST = "category_list__";
    public static final String REDIS_GOODS_LIST = "goods_list__";
    public static final String REDIS_TYAJIN = "tyajin_user__";
    public static final String REDIS_SESSION_KEY = "wx_session_key__";

    public static Map<String,String> MACHANT_MAP = new HashMap<String,String>();//商户缓存信息
    public static Map<String,String> AREA_MAP = new HashMap<String,String>();//地区缓存信息
    public static Map<String,Appinfo> APPINFO_MAP = new HashMap<String,Appinfo>();//md5加密key
//    public static Map<String,Merchant> MECHANT_MAP = new HashMap<String,Merchant>();//md5加密key
    public static Map<String,String> OPENID_MAP = new HashMap<String,String>();//md5加密key
    public static Map<String,String> STATUS_ORDER_MAP = new HashMap<String,String>();//md5加密key

    public static Map<String,String> PAY_MAP_WX = new HashMap<String,String>();//md5加密key
    public static Map<String,String> PHONE_MAP = new HashMap<String,String>();//md5加密key
    public static Map<String,String> MADMIN_APP_MAP = new HashMap<String,String>();//md5加密key
    public static Map<String,String> HY_TYPE_MAP = new HashMap<String,String>();//md5加密key
    public static Map<String,String> YX_TYPE_MAP = new HashMap<String,String>();//md5加密key

    public static Map<String,String> PAGE_MAP = new HashMap<String,String>();//md5加密key

    // =========== below from hewei Conts ===========

    // TOKEN
    public static final String WEIXIN_TOKEN_URL  ="https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET";
    public static final String WEIXIN_AUTHORIZE_URL  ="https://open.weixin.qq.com/connect/oauth2/authorize";

    /*
     * menu
     */
    public static final String WEIXIN_MENU_CREATE_URL  ="https://api.weixin.qq.com/cgi-bin/menu/create?access_token=ACCESS_TOKEN";
    public static final String WEIXIN_MENU_GET_URL  ="https://api.weixin.qq.com/cgi-bin/menu/get?access_token=ACCESS_TOKEN";
    public static final String WEIXIN_MENU_DELETE_URL  ="https://api.weixin.qq.com/cgi-bin/menu/delete?access_token=ACCESS_TOKEN";

    /*
     * user
     */
    public static final String WEIXIN_USER_INFO_URL ="https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN";

    public static final String WX_URL_getTempMedia = "https://api.weixin.qq.com/cgi-bin/media/get?access_token=ACCESS_TOKEN&media_id=MEDIA_ID";
    //上传临时素材管理
    public static final String WX_URL_uploadTempMedia = "https://api.weixin.qq.com/cgi-bin/media/upload?access_token=ACCESS_TOKEN&type=TYPE";
    //上传永久素材管理
    public static final String WX_URL_uploadForeverMedia = "https://api.weixin.qq.com/cgi-bin/material/add_material?access_token=ACCESS_TOKEN&type=TYPE";

    /*
     * 上传临时素材管理
     */
    public static final String WEIXIN_MATERIAL_UPLOAD_URL ="https://api.weixin.qq.com/cgi-bin/media/upload?access_token=ACCESS_TOKEN&type=TYPE";

    /*
     * 上传永久素材管理
     */
    public static final String WEIXIN_ADD_MATERIAL_URL ="https://api.weixin.qq.com/cgi-bin/material/add_material?access_token=ACCESS_TOKEN&type=TYPE";

    /*
     * 上传视频接口
     */
    public static final String WEIXIN_UPLOAD_VIDEO_URL = "https://api.weixin.qq.com/cgi-bin/media/uploadvideo?access_token=ACCESS_TOKEN";

    /*
     * 上传图文消息内的图片获取URL
     * 请注意，本接口所上传的图片不占用公众号的素材库中图片数量的5000个的限制。图片仅支持jpg/png格式，大小必须在1MB以下。
     * curl -F media=@test.jpg "https://api.weixin.qq.com/cgi-bin/media/uploadimg?access_token=ACCESS_TOKEN"
     */
    public static final String WEIXIN_MEDIA_UPLOADIMG_URL ="https://api.weixin.qq.com/cgi-bin/media/uploadimg?access_token=ACCESS_TOKEN";

    public static final String WEIXIN_MEDIA_UPLOADNEWS_URL ="https://api.weixin.qq.com/cgi-bin/media/uploadnews?access_token=ACCESS_TOKEN";

    //设置所属行业
    public static final String WX_URL_SET_INDUSTRY ="https://api.weixin.qq.com/cgi-bin/template/api_set_industry?access_token=ACCESS_TOKEN";
    //获取设置的行业信息
    public static final String WX_URL_GET_INDUSTRY ="https://api.weixin.qq.com/cgi-bin/template/get_industry?access_token=ACCESS_TOKEN";
    //获得模板ID
    public static final String WX_URL_ADD_TEMPLATE ="https://api.weixin.qq.com/cgi-bin/template/api_add_template?access_token=ACCESS_TOKEN";
    //获取模板列表
    public static final String WX_URL_GET_ALL_TEMPLATE ="https://api.weixin.qq.com/cgi-bin/template/get_all_private_template?access_token=ACCESS_TOKEN";
    //删除模板
    public static final String WX_URL_DEL_TEMPLATE ="https://api.weixin.qq.com/cgi-bin/template/del_private_template?access_token=ACCESS_TOKEN";
    //发送模板消息
    public static final String WX_URL_TEMPLATE_SEND_MSG ="https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=ACCESS_TOKEN";
    //一次性订阅消息推送
    public static final String WX_URL_ONCE_SUBSCRIBEMSG ="https://mp.weixin.qq.com/mp/subscribemsg?action=get_confirm&appid=wxaba38c7f163da69b&scene=1000&template_id=1uDxHNXwYQfBmXOfPJcjAS3FynHArD8aWMEFN\n" +
            "RGSbCc& redirect_url=http%3a%2f%2fsupport.qq.com&reserved=test#wechat_redirect";

    //通过API推送订阅模板消息给到授权微信用户
    public static final String WX_URL_TEMPLATE_SUBSCRIBE ="https://api.weixin.qq.com/cgi-bin/message/template/subscribe?access_token=ACCESS_TOKEN";


    /*
     * qrcode
     *{
        "action_name": "QR_LIMIT_SCENE",
        "action_info": {
             "scene": {
                    "scene_id": 1000
                }
          }
        }
     *
     *
     *
     */
    // POST
    public static final String WEIXIN_URL_QRCODE_TICKET ="https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token=TOKEN";
    public static final String WEIXIN_URL_QRCODE_SHOW ="https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket=TICKET";
    public static final String WEIXIN_URL_SHORTLINK ="https://api.weixin.qq.com/cgi-bin/shorturl?access_token=ACCESS_TOKEN";

    public static final String WEIXIN_URL_TEMPLATE_SET_INDUSTRY ="https://api.weixin.qq.com/cgi-bin/template/api_set_industry?access_token=ACCESS_TOKEN";
    public static final String WEIXIN_URL_TEMPLATE_GET_INDUSTRY ="https://api.weixin.qq.com/cgi-bin/template/get_industry?access_token=ACCESS_TOKEN";
    public static final String WEIXIN_URL_TEMPLATE_ADD ="https://api.weixin.qq.com/cgi-bin/template/api_add_template?access_token=ACCESS_TOKEN";
    public static final String WEIXIN_URL_TEMPLATE_DEL ="https://api.weixin.qq.com/cgi-bin/template/del_private_template?access_token=ACCESS_TOKEN";
    public static final String WEIXIN_URL_TEMPLATE_GETALL ="https://api.weixin.qq.com/cgi-bin/template/get_all_private_template?access_token=ACCESS_TOKEN";
    public static final String WEIXIN_URL_TEMPLATE_SEND ="https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=ACCESS_TOKEN";

    // 微信客服相关接口
    public static final String WEIXIN_URL_CUSTOM_ADD ="https://api.weixin.qq.com/customservice/kfaccount/add?access_token=ACCESS_TOKEN";
    public static final String WEIXIN_URL_CUSTOM_UPDATE ="https://api.weixin.qq.com/customservice/kfaccount/update?access_token=ACCESS_TOKEN";
    public static final String WEIXIN_URL_CUSTOM_DEL ="https://api.weixin.qq.com/customservice/kfaccount/del?access_token=ACCESS_TOKEN";
    public static final String WEIXIN_URL_CUSTOM_UPLOADHEADIMG ="http://api.weixin.qq.com/customservice/kfaccount/uploadheadimg?access_token=ACCESS_TOKEN&kf_account=KFACCOUNT";
    public static final String WEIXIN_URL_CUSTOM_GETKFLIST ="https://api.weixin.qq.com/cgi-bin/customservice/getkflist?access_token=ACCESS_TOKEN";
    public static final String WEIXIN_URL_CUSTOM_SEND ="https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=ACCESS_TOKEN";
    public static final String WEIXIN_URL_CUSTOM_DINGYUE ="https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token=ACCESS_TOKEN";

    // 获取微信|小程序二维码
    // https://mp.weixin.qq.com/debug/wxadoc/dev/api/qrcode.html
    public static final String WX_URL_GETWXACODE_POST ="https://api.weixin.qq.com/wxa/getwxacode?access_token=ACCESS_TOKEN";//永久场景
    public static final String WX_URL_GETWXACODEUNLIMIT_POST ="https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=ACCESS_TOKEN";// 临时场景,带参数s
    public static final String WX_URL_CREATEWXAQRCODE_POST ="https://api.weixin.qq.com/cgi-bin/wxaapp/createwxaqrcode?access_token=ACCESS_TOKEN";// 临时场景
    public static final String WX_URL_JSCODE2SESSION_POST ="https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code";

    // 微信直播相关接口
    public static final String WX_URL_ROOM_CREATE ="https://api.weixin.qq.com/wxaapi/broadcast/room/create?access_token=ACCESS_TOKEN";
//    获取直播间列表+获取直播间回放
    public static final String WX_URL_ROOM_LIVEINFO ="https://api.weixin.qq.com/wxa/business/getliveinfo?access_token=ACCESS_TOKEN";
//    直播间导入商品
    public static final String WX_URL_ROOM_ADDGOODS ="https://api.weixin.qq.com/wxaapi/broadcast/room/addgoods?access_token=ACCESS_TOKEN";
//    商品添加并提审
    public static final String WX_URL_GOODS_ADD ="https://api.weixin.qq.com/wxaapi/broadcast/goods/add?access_token=ACCESS_TOKEN";
//    撤回审核
    public static final String WX_URL_GOODS_RESETAUDIT ="https://api.weixin.qq.com/wxaapi/broadcast/goods/resetaudit?access_token=ACCESS_TOKEN";
//    重新提交审核
    public static final String WX_URL_GOODS_AUDIT ="https://api.weixin.qq.com/wxaapi/broadcast/goods/audit?access_token=ACCESS_TOKEN";
    //    删除商品
    public static final String WX_URL_GOODS_DELETE ="https://api.weixin.qq.com/wxaapi/broadcast/goods/delete?access_token=ACCESS_TOKEN";
    //    更新商品
    public static final String WX_URL_GOODS_UPDATE ="https://api.weixin.qq.com/wxaapi/broadcast/goods/update?access_token=ACCESS_TOKEN";
    //    获取商品状态
    public static final String WX_URL_GOODS_GETGOODSWAREHOUSE ="https://api.weixin.qq.com/wxa/business/getgoodswarehouse?access_token=ACCESS_TOKEN";
    //    获取商品状态
    public static final String WX_URL_GOODS_GETAPPROVED ="https://api.weixin.qq.com/wxaapi/broadcast/goods/getapproved?access_token=ACCESS_TOKEN";
    /**
     * 电商收付通-二级商户进件
     */
    public static final String WX_URL_COMMERCE_APPLY = "/v3/ecommerce/applyments/";
    /**
     * 电商收付通-查询进件申请状态
     */
    public static final String WX_URL_COMMERCE_APPLY_STATE = "/v3/ecommerce/applyments/";
    /**
     * 电商收付通-通过业务申请编号查询申请状态
     */
    public static final String WX_URL_COMMERCE_APPLY_STATE_BY_NO = "/v3/ecommerce/applyments/";


    /**
     * 电商收付通-查询进件申请状态
     */
    //E_COMMERCE_APPLY_STATE("/v3/ecommerce/applyments/%s"),
    /**
     * 电商收付通-通过业务申请编号查询申请状态
     */
    //E_COMMERCE_APPLY_STATE_BY_NO("/v3/ecommerce/applyments/out-request-no/%s"),

    public static final String WEIXIN_HEWEIDAO_APP_ID  ="wxff960338d3484bab";
    public static final String WEIXIN_HEWEIDAO_APP_SECRET  ="f24dcca520f60d30aa912700c8322867";


    // 仟伯度
    public static final String WEIXIN_QIANBAIDU_APP_ID  ="wxa5e140253f239ee6";
    public static final String WEIXIN_QIANBAIDU_APP_SECRET  ="caaaea1679cde7a0f94c1563449397a8";

    // 仟仟干货
    public static final String WEIXIN_QQGH_APP_ID  ="wxa62043ebb7fb19a1";
    public static final String WEIXIN_QQGH_APP_SECRET  ="0e81928ae48992a6e25b1b2a2a32853c";

    // 仟伯惠
    public static final String WEIXIN_QIANBAIHUI_APP_ID  ="wx90f6b887af937fd9";
    public static final String WEIXIN_QIANBAIHUI_APP_SECRET  ="2cde220c6b6f362e3639cf17d84895ca";

    // 魅者
    public static final String WEIXIN_MEIZHE_APP_ID  ="wxc572acf4910a88d2";
    public static final String WEIXIN_MEIZHE_APP_SECRET  ="7f918d406d11f46d2b7b82ef81e0f206";

    public static final String WEIXIN_HEWEIDAO = "heweidao";
    public static final String WEIXIN_HEWEITANG = "heweitang";
    public static final String WEIXIN_QIANBAIHUI = "qianbaihui";
    public static final String WEIXIN_QIANBAIDU = "qianbaidu";
    public static final String WEIXIN_MEIZHE = "meizhe";

    /**
     * 微信接入token ，用于验证微信接口
     */
    public static final String WEIXIN_HEWEITANG_TOKEN = "y6u7i8o9p0wtbaiipbsse";
    public static final String WEIXIN_QIANBAIHUI_TOKEN = "s2d3f4g5_qbh_baiipbsse";
    public static final String WEIXIN_QIANBAIDU_TOKEN = "y6u7i8o9p0_qbd_baiipbsse";
    public static final String WEIXIN_MEIZHE_TOKEN = "XTY789ayuts6874450isdf";

    public static final String WEIXIN_ACTION_NAME_QR_SCENE = "QR_SCENE";
    public static final String WEIXIN_ACTION_NAME_QR_LIMIT_SCENE = "QR_LIMIT_SCENE";
    public static final String WEIXIN_ACTION_NAME_QR_LIMIT_STR_SCENE = "QR_LIMIT_STR_SCENE";

    public static final String WEIXIN_QR_PATH = "/fafa/www/images";
    public static final String WEIXIN_IMG_PATH = "/fafa/www";
//    public static final String WEIXIN_QR_PATH = "/fafa/images/wxqr";

    // 微信菜单
    public static final String WEIXIN_ACT_MENU_CREATE = "menu_create";
    public static final String WEIXIN_ACT_MENU_GET = "menu_get";
    public static final String WEIXIN_ACT_MENU_DELETE = "menu_delete";

    // 微信菜单类型
    public static final String WX_BTN_VIEW = "view";
    public static final String WX_BTN_CLICK = "click";


    // 微信素材类型
    public static final String WEIXIN_MATERIAL_ALL = "media";
    public static final String WEIXIN_MATERIAL_TEXT = "text";
    public static final String WEIXIN_MATERIAL_IMAGE = "image";
    public static final String WEIXIN_MATERIAL_VOICE = "voice";
    public static final String WEIXIN_MATERIAL_VIDEO = "mpvideo";
    public static final String WEIXIN_MATERIAL_MUSIC = "music";
    public static final String WEIXIN_MATERIAL_THUMB = "thumb";
    // 发送图文消息（点击跳转到外链） 图文消息条数限制在8条以内
    public static final String WEIXIN_MATERIAL_NEWS = "news";
    //发送图文消息（点击跳转到图文消息页面） 图文消息条数限制在8条以内
    public static final String WEIXIN_MATERIAL_MPNEWS = "mpnews";
    public static final String WEIXIN_MATERIAL_WXCARD = "wxcard";




    public static final String WX_LATITUDE = "Latitude";
    public static final String WX_LONGITUDE = "Longitude";
    public static final String WX_PRECISION = "Precision";

    // 仟伯度事件KEY
    public static final String WX_EVT_ENGLISH = "english";
    public static final String WX_EVT_WISDOM = "wisdom";
    public static final String WX_EVT_SIGNIN = "signin";
    public static final String WX_EVT_JOKE = "joke";
    public static final String WX_EVT_YANGSHENG = "yangsheng";
    public static final String WX_EVT_RIBAO = "ribao";
    public static final String WX_EVT_SCPT = "scpt";//上传配图
    public static final String WX_EVT_SCHBMB = "schbmb";//上传会过模板
    public static final String WX_EVT_SCWXEWM = "scwxewm";//上传个人微信二维码

    public static final String WX_HAIBAO_TYPE = "haibao_type";     //当天海报类别

    public static final String WX_CHECK_USER = "check_user";
    public static final String WX_CREATE_PYQ = "create_pyq";
    public static final String WX_CREATE_PYQPT = "create_pyqPT";


    // 微信场景值
    public static final int WEIXIN_SCENE_QBD = 2000;
    public static final int WEIXIN_SCENE_QBD_WISDOM = 2001;
    public static final int WEIXIN_SCENE_QBD_ENGLISH = 2002;

    // 轻淘客APP—-key
    public static final String QTK_APP_KEY = "JGiE8OiY";


    public static final String REDIS_ZERO = "0";   //
    public static final String REDIS_ONE = "1";   //

    // redis 默认key命名方式：type_uid_date ,value值统一小写
    public static final String REDIS_KEYTYPE_IS_SIGNIN = "is_signin_"; // 过期时间3天
    public static final String REDIS_KEYTYPE_IS_AUTO_SIGN = "is_auto_sign_"; // 过期时间3天
    public static final String REDIS_KEYTYPE_IS_ZAOQIN = "is_zaoqin_"; // 过期时间3天
    public static final String REDIS_KEYTYPE_SIGNIN = "signin_";     // 过期时间3天
    public static final String REDIS_KEYTYPE_ENGLISH = "english_";  // 过期时间3天
    public static final String REDIS_KEYTYPE_IS_ENGLISH = "is_english_";  // 过期时间3天
    public static final String REDIS_KEYTYPE_WISDOM = "wisdom_";   // 过期时间3天
    public static final String REDIS_KEYTYPE_IS_WISDOM = "is_wisdom_";   // 过期时间3天
    public static final String REDIS_KEYTYPE_CHECKUSER = "check_user_";   // 过期时间3天
    public static final String REDIS_RIBAO_COMMON = "ribao_common_";   // 过期时间1天
    public static final String REDIS_IS_RIBAO_CRAW = "is_ribao_craw_";   // 过期时间1天

    public static final String REDIS_USER_LOGO = "user_logo_";   // 永不过期
    public static final String REDIS_USER_REPEAT_SIGN = "user_repeat_sign_";   // 永不过期
    public static final String USER_NULL_CHECK = "user_null_check_";   // 永不过期

    // 对于与用户有上下文对话相关信息进行存储
    // 对于没有上下文相关的不进行存储
    // 存储格式key：session_type_uid
    // 存储格式：inputType_matchType_timestamp
    // 过期时间：保存两天
    public static final String REDIS_SESSION_TYPE = "session_type_";   // 永不过期

    public static final String REDIS_EVENT = "event_";
    public static final String REDIS_TEXT = "text_";
    public static final String REDIS_IMAGE = "image_";
    public static final String REDIS_RIBAO = "ribao_";
    public static final String REDIS_NULL = "null_";

    //    public static final String REDIS_GLY_KEY = "gly_key_";//REDIS_GLY_KEY+验证码=uid
    public static final String REDIS_GLY_LIST_MAP = "gly_list_";//REDIS_GLY_LIST_MAP key=@senderid value=uid

    public static final String JUHE_JIANKANG_CATEGORY_URL = "http://japi.juhe.cn/health_knowledge/categoryList?key=KEY";
    public static final String JUHE_JIANKANG_detail_URL = "http://japi.juhe.cn/health_knowledge/categoryList?key=KEY";

    // 淘宝客keys
    public static final String TBK_APP_KEY = "23633702";
    public static final String TBK_APP_SECRET = "168d69ca6654d8e9a2fcde4d048090e3";

    public static final String WX_QBD_IMAGEPATH_TEMPLATE = "/fafa/www/images/qnhd/template/";
    public static final String WX_QBD_IMAGEPATH_QR = "/fafa/www/images/qnhd/template/qr/";
    public static final String WX_QBD_IMAGEPATH_ENGLISH = "/fafa/www/images/qnhd/haibao/";
    public static final String WX_QBD_IMAGEPATH_WISDOM = "/fafa/www/images/qnhd/wisdom/";
    public static final String WX_QBD_IMAGEPATH_TEMP = "/fafa/www/images/qnhd/temp/";
    public static final String WX_QBD_IMAGEPATH_SIGNIN = "/fafa/www/images/qnhd/signin/";
    public static final String WX_QBD_IMAGEPATH_PYQ = "/fafa/www/images/qnhd/pyq/";


    public static ConcurrentHashMap<String,Object> conMap =  new ConcurrentHashMap<>();

    /*
     * user type
     */
    public static final int USER_TYPE_ADMIN = 99;
    public static final int USER_TYPE_VIP = 10;
    public static final int USER_TYPE_COMMON = 1;

    /*
     * http request method
     */
    public static final int HTTP_METHOD_GET = 0;
    public static final int HTTP_METHOD_POST = 1;


//    /**
//     * APPID
//     */
//    public static final String APPID = "wx52e8ee1150fe3a42";
//    /**
//     * SECRET
//     */
//    public static final String SECRET = "3b69f4a0443558fae7c088bb784c2e5e";

    public static final int EFFECTIVE_TIME = 700000;


    public static int STATUS_OK =200;//成功
    public static int STATUS_PARAMS_ERROR =400;//参数输入错误
    public static int STATUS_SERVER_ERROR =500;//服务出错

    /**
     * 用户session名
     */
    public static final String USER_SESSION_NAME = "loginUser";
    public static final String FEIFAN_COOKIE_NAME = "qnuser";
    public static final String DOMAIN_NAME = "qianniu010.com";

    public static Long USER_ID = 10000000l;//管理员用户
    public static String USER_NAME = "admin";//管理员用户
    public static String USER_PASSWORD = "admin888!";//管理员密码
    public static String USER_EMAIL = "chenxuebin3@wanda.cn";//管理员邮箱

    public static int SEARCH_TYPE_BAIKE = 0;// 其他
    public static int SEARCH_TYPE_WEATHER = 100010;// 天气
    public static int SEARCH_TYPE_EXPRESS = 100020;// 快递
    public static int SEARCH_TYPE_JOKE = 100030;  // 笑话
    public static int SEARCH_TYPE_CHENGYU = 100040;  // 成语
    public static int SEARCH_TYPE_TANGSHI = 100045;  // 唐诗
    public static int SEARCH_TYPE_CHENGYU_SUSPEND = 100041;  // 成语

    public static int SEARCH_TYPE_XINGZUO = 100050;  //星座
    public static int SEARCH_TYPE_JIZHUANWAN = 100060;  // 脑筋急转弯
    public static int SEARCH_TYPE_GUSHI = 100070;  // 故事
    public static int SEARCH_TYPE_JIXIONG = 100080;  // 吉凶查询

    public final static String REDIS_MAP_WEATHER = "WEATHER";  // 天气

    public static String URL_TULING_API = "http://www.tuling123.com/openapi/api";  // 成语
    public static String URL_BAIDU_HANZI_API = "http://hanyu.baidu.com/s?wd=WORD&ptype=zici";  // 百度汉字查询

    public static Map<String,String> wordMap = new HashMap<String,String>();

    public static Map<String,String> specialtyMap = new HashMap<String,String>();
    public static Map<String,String> checkUpMap = new HashMap<String,String>();
    public static Map<String,String> medicationMap = new HashMap<String,String>();
    public static Map<String,String> symptomMap = new HashMap<String,String>();
    public static Map<String,AtomicInteger> checkMap = new HashMap<String,AtomicInteger>();

    public static Map<String,Integer> SESSION_TYPE_MAP = new HashMap<String,Integer>();
    public static Map<String,Integer> SESSION_SUSPEND_MAP = new HashMap<String,Integer>();
    public static Map<String,String> SESSION_LAST_WORD_MAP = new HashMap<String,String>();
    public static Map<String,Appinfo> APP_INFO_MAP = new HashMap<String,Appinfo>();

    public static List<String> juheKeyList = new ArrayList<String>();
    public static List<String> meList = new ArrayList<String>();
    public static List<String> tulingKeyList = new ArrayList<String>();
    public static List<String> fontList = new ArrayList<String>();
    public static List<String> wxtypeList = new ArrayList<String>();

    static {
        Appinfo appinfo = new Appinfo();
        appinfo.setAppid("wx1a0efc1055300b7e");
        appinfo.setSecret("9aa99be4709c5a2c60047e55eaa391fd");
        APPINFO_MAP.put("jttzlc",appinfo);

        appinfo = new Appinfo();
        appinfo.setAppid("wx3500ffae19aae4d3");
        appinfo.setSecret("4b6327b91096bd671bff9d6ee69490cb");
        APPINFO_MAP.put("lcfl",appinfo);

        appinfo = new Appinfo();
        appinfo.setAppid("wx5b23c66b30fed8c2");
        appinfo.setSecret("15481298d1d5b6c519c6d8ac3ee048c8");
        APPINFO_MAP.put("jrlcdh",appinfo);

        appinfo = new Appinfo();
        appinfo.setAppid("wx5038a6d4adf4079a");
        appinfo.setSecret("596bc3c53f8d79947a4950e9e8f5ff6b");
        APPINFO_MAP.put("dqlc",appinfo);

        appinfo = new Appinfo();
        appinfo.setAppid("wx7ec98bd7f0ae42b9");
        appinfo.setSecret("cf8b10d335492dacaf99c9411704f9ed");
        APPINFO_MAP.put("vlc",appinfo);

        // 仟牛商城
        appinfo = new Appinfo();
        appinfo.setAppid("wx5419a52e4c448e13");
        appinfo.setSecret("c742c042069db9339523624553337171");
        APPINFO_MAP.put("qnmall",appinfo);

        // 仟牛互动
        appinfo = new Appinfo();
        appinfo.setAppid("wx5419a52e4c448e13");
        appinfo.setSecret("c742c042069db9339523624553337171");
        APPINFO_MAP.put("qnhd",appinfo);


//        Merchant merchant = new Merchant();
//        merchant.setId(1);
//        merchant.setMcode("qnmall");
//        merchant.setMcode("qnmall");

        STATUS_ORDER_MAP.put("-1","已关闭");
        STATUS_ORDER_MAP.put("0","待支付");
        STATUS_ORDER_MAP.put("1","待发货");
        STATUS_ORDER_MAP.put("2","待收货");
        STATUS_ORDER_MAP.put("3","待评价");
        STATUS_ORDER_MAP.put("4","已评价");
        STATUS_ORDER_MAP.put("5","已完成");

        PAY_MAP_WX.put("NO_AUTH","没有该接口权限");
        PAY_MAP_WX.put("AMOUNT_LIMIT","金额超限");
        PAY_MAP_WX.put("PARAM_ERROR","参数错误");
        PAY_MAP_WX.put("OPENID_ERROR","Openid错误");
        PAY_MAP_WX.put("SEND_FAILED","付款错误");

        PAY_MAP_WX.put("NOTENOUGH","余额不足");
        PAY_MAP_WX.put("SYSTEMERROR","系统繁忙，请稍后再试");
        PAY_MAP_WX.put("NAME_MISMATCH","姓名校验出错");
        PAY_MAP_WX.put("SIGN_ERROR","签名错误");
        PAY_MAP_WX.put("XML_ERROR","Post内容出错");

        PAY_MAP_WX.put("FATAL_ERROR","两次请求参数不一致");
        PAY_MAP_WX.put("FREQ_LIMIT","超过频率限制，请稍后再试");
        PAY_MAP_WX.put("MONEY_LIMIT","已经达到今日付款总额上限");
        PAY_MAP_WX.put("CA_ERROR","商户API证书校验出错");
        PAY_MAP_WX.put("V2_ACCOUNT_SIMPLE_BAN","无法给非实名用户付款");

        PAY_MAP_WX.put("FATAL_ERROR","两次请求参数不一致");
        PAY_MAP_WX.put("FREQ_LIMIT","超过频率限制，请稍后再试");
        PAY_MAP_WX.put("MONEY_LIMIT","已经达到今日付款总额上限");
        PAY_MAP_WX.put("CA_ERROR","商户API证书校验出错");
        PAY_MAP_WX.put("V2_ACCOUNT_SIMPLE_BAN","无法给非实名用户付款");

        PAY_MAP_WX.put("PARAM_IS_NOT_UTF8","请求参数中包含非utf8编码字符");
        PAY_MAP_WX.put("SENDNUM_LIMIT","该用户今日付款次数超过限制,如有需要请登录微信支付商户平台更改API安全配置");

        PHONE_MAP.put("key_wxaa91ca464e4237fd","lzyOEMsys963852741");
        PHONE_MAP.put("key_wx401f23032c2142bb","lzyOEMsys963852741");
        PHONE_MAP.put("key_wx5419a52e4c448e13","lzyOEMsys963852741");
        PHONE_MAP.put("agentId_wxaa91ca464e4237fd","6811");
        PHONE_MAP.put("agentId_wx401f23032c2142bb","6811");
        PHONE_MAP.put("agentId_wx5419a52e4c448e13","9507");

        MADMIN_APP_MAP.put("wx9b2d2c3944f6e568","3");

        // 配置也简称
        PAGE_MAP.put("gd","goodsdetail");
        PAGE_MAP.put("goodsdetail","gd");
        PAGE_MAP.put("ix","index");
        PAGE_MAP.put("index","ix");
        PAGE_MAP.put("fx","fenxiang");
        PAGE_MAP.put("fenxiang","fx");

        HY_TYPE_MAP.put("2410","酒店餐饮");
        HY_TYPE_MAP.put("2407","生鲜食品");
        HY_TYPE_MAP.put("2411","美容美发");
        HY_TYPE_MAP.put("2408","酒类茶叶");
        HY_TYPE_MAP.put("2412","休闲娱乐");

        HY_TYPE_MAP.put("2409","土特产品");
        HY_TYPE_MAP.put("2413","医药保健");
        HY_TYPE_MAP.put("2420","建材家居");
        HY_TYPE_MAP.put("2421","教育培训");
        HY_TYPE_MAP.put("2423","汽车美容");

        HY_TYPE_MAP.put("2416","线下超市");
        HY_TYPE_MAP.put("2419","婚纱摄影");
        HY_TYPE_MAP.put("2415","服饰鞋帽");
        HY_TYPE_MAP.put("2422","金融保险");
        HY_TYPE_MAP.put("2414","母婴用品");

        HY_TYPE_MAP.put("2424","数码家电");
        HY_TYPE_MAP.put("2417","工艺礼品");
        HY_TYPE_MAP.put("2425","智能产品");
        HY_TYPE_MAP.put("2418","珠宝饰品");
        HY_TYPE_MAP.put("2426","进口商品");

        //@1：拼团；2：砍价；3：抽奖；4：秒杀；5：活动报名；6：投票；7：万人团；8：集卡(字)；
        YX_TYPE_MAP.put("1","拼团");
        YX_TYPE_MAP.put("2","砍价");
        YX_TYPE_MAP.put("3","抽奖");
        YX_TYPE_MAP.put("4","秒杀");
        YX_TYPE_MAP.put("5","活动报名");
        YX_TYPE_MAP.put("6","投票");
        YX_TYPE_MAP.put("7","万人团");
        YX_TYPE_MAP.put("8","集卡");

        // =========== below from hewei Conts ===========

        // specialtyMap.put("89","内科");
        specialtyMap.put("99","外科");
        specialtyMap.put("111","妇科");
        specialtyMap.put("112","产科");
        specialtyMap.put("113","儿科");
        specialtyMap.put("118","皮肤科");
        specialtyMap.put("117","男科");
        specialtyMap.put("125","肿瘤科");
        specialtyMap.put("128","精神科");
        specialtyMap.put("129","传染科");
        specialtyMap.put("130","中医科");
        specialtyMap.put("132","急诊科");
        specialtyMap.put("138","预防保健科");
        specialtyMap.put("143","美容减肥科");
        specialtyMap.put("145","空腔科");
        specialtyMap.put("144","眼科");
        specialtyMap.put("146","耳鼻喉科");
        specialtyMap.put("149","心理咨询");

        juheKeyList.add("JHb822dd530eb0bba2cb7c36d282d013c0");
        juheKeyList.add("JHd478d8e22234d51985c2c4493c6a7782");
        juheKeyList.add("JH5363dd34d1fc2a4b83b2c4770962bd6b");
        juheKeyList.add("JH2bde248a28cd7c2f239854285ce7264c");

        tulingKeyList.add("32725d99212f44c982595754554cc5bb");
        tulingKeyList.add("f6dd136ed9b44405aee67d50a6a8c90d");
        tulingKeyList.add("487dd05d181346e99b8b442a1557c232");
        tulingKeyList.add("508b561f59c44f0ba604f4b40de30406");

    }



    // 微信机器人
    //------------------------------ API ------------------------------

    public static String WX_ROBOT_HOST = "http://127.0.0.1:2000";
    public static String WX_API_ACCEPT_FRIEND_REQUEST = "/openwx/accept_friend_request?client=";
    public static String WX_API_STICK = "/openwx/stick?client=";
    public static String WX_API_KICK_GROUP_MEMBER = "/openwx/kick_group_member?client=";
    public static String WX_API_GET_GROUP_INFO = "/openwx/get_group_info?client=";
    public static String WX_API_SEND_GRIEND_MSG = "/openwx/send_friend_message?async=1&client=";
    public static String WX_API_SEND_GROUP_MSG = "/openwx/send_group_message?async=1&client=";


    // demo
//    members: 成员的id（多个成员id用逗号分割）
//    id: 群组的id
//    displayname: 群组的显示名称
//    数据格式	application/x-www-form-urlencoded
//    调用示例	http://127.0.0.1:3000/openwx/kick_group_member?id=xxxxxx&members=xxxx,xxxx
//    http://127.0.0.1:3000/openwx/kick_group_member?displayname=xxxxxx&members=xxxx,xxxx



    //------------------------------ Redis key ------------------------------

    public static final String REDIS_GLY_KEY = "gly_key_";//REDIS_GLY_KEY+验证码=uid
    public static final String REDIS_WX_GLY_MAP = "wx_gly_map";//map：gly_list_+uid key=@group_id value=sender_id
    public static final String REDIS_WX_GROUP_MEMBER = "wx_group_member_";//map：wx_group_+groupid key=@markname value=member_id
    public static final String REDIS_WX_GROUP_MSG_MAP = "wx_group_msg_map";//map：wx_group_+groupid key=@markname value=member_id
    public static final String REDIS_WX_GROUP_TO_GROUP_MAP = "wx_group_to_group_msg_map";//map：wx_group_+groupid key=@from groupname value=togroupname
    public static final String REDIS_WX_GROUP_TO_GROUP_SET = "wx_group_to_group_msg_set";//map：wx_group_+groupid key=@from groupname value=togroupname
    public static final String REDIS_WX_ROBOT_MAP = "wx_robot_map";//map：wx_group_+groupid key=@openid value=robot id(client)


    //------------------------------ regex ------------------------------

    public static Pattern REGEX_WX_GLY = Pattern.compile("^群测试消息￥[0-9A-Za-z]{8}￥，请勿回复$");
    public static Pattern REGEX_WX_GLY_MT = Pattern.compile("^@[\\s\\S]*秒踢$");

    public static final String md5_key = "a90218782025c48e09ba0436cf30d029";


    //------------------------------ EMOJI key ------------------------------
    public final static String EMOJI_OK = "✅";  // 成功
    public final static String EMOJI_FAIL = "❌";  // 成功
    public final static String EMOJI_ATTENTION = "⚠️";  // 注意
    public final static String EMOJI_WENHAO = "❓️️";  // 问好
    public final static String EMOJI_GANTAN_HAO = "❗️️️";  // 感叹号
    public final static String EMOJI_SHASHOU = "⚔️️";  // 杀手
    public final static String EMOJI_STAR = "✨";  // 星星
    public final static String EMOJI_SUN = "☀";  // 太阳
    public final static String EMOJI_TELEPHONE = "☎️️";  // 电话
    public final static String EMOJI_COFFEE = "☕️";  // 咖啡

    public final static String EMOJI_100_FEN_100 = "\uD83D\uDCAF️️";  // 100分
    public final static String EMOJI_HUOBAO = "\uD83D\uDCA5️️";  // 火爆
    public final static String EMOJI_MENGYAN = "\uD83D\uDE48️️";  // 火爆

    public final static String EMOJI_DIAMOND = "\uD83D\uDC8E️️";  // 钻石
    public final static String EMOJI_LEAF = "\uD83C\uDF43️️";  // 双叶
    public final static String EMOJI_KISS = "\uD83D\uDC44️️";  // 亲吻
    public final static String EMOJI_CROWN = "\uD83D\uDC51️️";  // 黄冠
    public final static String EMOJI_FIRE = "\uD83D\uDD25️️";  // 火
    public final static String EMOJI_TRUMPET = "\uD83D\uDCE2️️";  // 喇叭，通知
    public final static String EMOJI_ROSE = "\uD83C\uDF37️";  // 小玫瑰
    public final static String EMOJI_RED_ROSE = "\uD83C\uDF39️";  // 大玫瑰
    public final static String EMOJI_RED_FLOWER = "\uD83C\uDF3A️";  // 大玫瑰
    public final static String EMOJI_PINK_FLOWER = "\uD83C\uDF38️";  // 粉玫瑰
    public final static String EMOJI_THUMB = "\uD83D\uDC4D";  //大拇指
    public final static String EMOJI_RAIN = "\uD83D\uDCA6";  //雨水
    public final static String EMOJI_DOLLAR = "\uD83D\uDCB0";  //美元
    public final static String EMOJI_NATIONAL_FLAG = "\uD83C\uDDE8\uD83C\uDDF3";  //国旗
    public final static String EMOJI_SUNFLOWER = "\uD83C\uDF3B";  //太阳花
    public final static String EMOJI_FIREWORKS = "\uD83C\uDF89";  //烟花
    public final static String EMOJI_TLOVE = "\uD83D\uDC9E";  //双爱心
    public final static String EMOJI_GET = "\uD83C\uDE50";  //得（到）
    public final static String EMOJI_RED_PACKET = "[红包]";  //红包

    public final static String EMOJI_SECRET = "㊙";  //秘密
    public final static String EMOJI_BOOK = "\uD83D\uDCD8";  //书籍
    public final static String EMOJI_FLOWER = "\uD83C\uDF38";  //书籍
    public final static String EMOJI_FIST = "\uD83D\uDC4A";  //拳头
    public final static String EMOJI_CLOVER = "\uD83C\uDF40";  //四叶草
    public final static String EMOJI_BLESS = "\uD83D\uDE4F";  //保佑
    public final static String EMOJI_GOOD_NIGHT = "[月亮]";  // 晚安
    public final static String EMOJI_ONE = "❶";  // 1
    public final static String EMOJI_TWO = "❷";  // 2
    public final static String EMOJI_THREE = "❸";  // 3
    public final static String EMOJI_FOUR = "❹";  // 4
    public final static String EMOJI_FIVE = "❺";  // 5
    public final static String EMOJI_SIX = "❻";  // 6
    public final static String EMOJI_SEVEN = "❼";  // 7
    public final static String EMOJI_EIGHT = "❽";  // 8
    public final static String EMOJI_NIGHT = "❾";  // 9
    public final static String EMOJI_TEN = "❿";  // 10

    public final static String EMOJI_BEE = "\uD83D\uDC1D";  // 蜜蜂
    public final static String EMOJI_GIFT = "\uD83C\uDF81";  // 礼物
    public final static String EMOJI_BUTTERFLY = "\uD83C\uDF80";  // 蝴蝶结
    public final static String EMOJI_SKIRT = "\uD83D\uDC57";  // 裙子
    public final static String EMOJI_HIGH_SHOES = "\uD83D\uDC62";  // 高跟鞋
    public final static String EMOJI_DANCE = "\uD83D\uDC83";  // 跳舞
    public final static String EMOJI_HAND_IN_HAND = "\uD83D\uDC6B";  // 牵手
    public final static String EMOJI_CLAP = " \uD83D\uDC4F";  // 拍手
    public final static String EMOJI_WHITE_CLOUD = "☁";  // 白云

    public final static String EMOJI_EYE = "\uD83D\uDC41";  // 眼睛
    public final static String EMOJI_GUIGUAN = "\uD83D\uDD31";  // 金色桂冠
    public final static String EMOJI_CD = "\uD83D\uDCC0";  // cd
    public final static String EMOJI_GUITAR = "\uD83C\uDFB8";  // 吉他
    public final static String EMOJI_YINFU= "\uD83C\uDFB5";  // 音符
    public final static String EMOJI_HUATONG = "\uD83C\uDFA4";  // 话筒
    public final static String EMOJI_QIQIU = "\uD83C\uDF88";  // 气球
    public final static String EMOJI_SHUIJIAO = "\uD83D\uDCA4";  // 😴
    public final static String EMOJI_CAKE = "\uD83C\uDF82";  // 蛋糕
    public final static String EMOJI_TWO_FLOWER = "\uD83C\uDF43";  // 双叶草
    public final static String EMOJI_SUN_FLOWER = "\uD83C\uDF3B";  // 太阳花
    public final static String EMOJI_DAOGU = "\uD83C\uDF3E";  // 稻谷
    public final static String EMOJI_HUADUO = "\uD83D\uDC90";  // 花朵
    public final static String EMOJI_LIZHI = "\uD83C\uDF52";  // 荔枝
    public final static String EMOJI_CAOMEI = "\uD83C\uDF53";  // 草莓
    public final static String EMOJI_MANGGO = "\uD83C\uDF4B";  // 芒果
    public final static String EMOJI_HONGSHU = "\uD83C\uDF60";  // 红薯
    public final static String EMOJI_APPLE = "\uD83C\uDF4E";  //苹果
    public final static String EMOJI_RED_FOUR_TRIGLE = "\uD83D\uDCA2";  //红四角星
    public final static String EMOJI_FULL = "\uD83C\uDE35";  //满
//    public final static String EMOJI_FULL = "\uD83E\uDD8B️";  //蝴蝶

    //------------------------------ tip words ------------------------------
    public final static String OPERATE_OK = "✅操作成功";  // 操作成功成功

    public final static int SMS_APPID = 1400255715;
    public final static String SMS_APPKEY = "817edd9f655e83d0f9aa51d66daf400b";
}
